using System.Net.Mail;
using PopForums.Models;

namespace PopForums.Email
{
	public interface INewAccountMailer
	{
		SmtpStatusCode Send(User user, string verifyUrl);

		/// <summary>
		/// Used to deliver the text for a welcome e-mail, where the user is already 
		/// approved. The default implementation uses Resources.RegisterEmailThankYou. 
		/// It uses the following string format items:
		/// {0} Forum title (from settings)
		/// {1} Mail signature (from settings)
		/// {2} Environment.NewLine
		/// </summary>
		string NewUserApprovedEmail { get; }

		/// <summary>
		/// Used to deliver the text for a welcome e-mail, where the user is must follow  
		/// a verification link. The default implementation uses Resources.RegisterEmailThankYou. 
		/// It uses the following string format items:
		/// {0} Forum title (from settings)
		/// {1} Verification URL + auth code (generated by calling code)
		/// {2} Verification URL
		/// {3} Authorization key (from user object)
		/// {4} Mail signature (from settings)
		/// {5} Environment.NewLine
		/// </summary>
		string NewUserVerifyEmail { get; }
	}
}